import request from './request'

/**
 * 上传文件
 * @param {FormData} formData - 文件表单数据
 * @returns {Promise}
 */
export function uploadFile(formData) {
  return request({
    url: '/common/upload',
    method: 'post',
    data: formData,
    headers: {
      'Content-Type': 'multipart/form-data'
    }
  })
}

/**
 * 获取系统配置（管理员）
 * @returns {Promise}
 */
export function getSystemConfig() {
  return request({
    url: '/system/config',
    method: 'get'
  })
}

/**
 * 更新系统配置（管理员）
 * @param {Object} data - 系统配置
 * @returns {Promise}
 */
export function updateSystemConfig(data) {
  return request({
    url: '/system/config',
    method: 'put',
    data
  })
}

/**
 * 导出数据（管理员）
 * @param {Object} params
 * @param {string} params.type - 导出类型：user/pet/order等
 * @param {string} params.startDate - 开始日期（可选）
 * @param {string} params.endDate - 结束日期（可选）
 * @returns {Promise}
 */
export function exportData(params) {
  return request({
    url: '/common/export',
    method: 'get',
    params,
    responseType: 'blob'
  })
}

/**
 * 获取公共数据字典
 * @param {string} type - 字典类型
 * @returns {Promise}
 */
export function getDictionary(type) {
  return request({
    url: '/common/dictionary',
    method: 'get',
    params: { type }
  })
}
